﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MJM.SPP.AccesoDatos;
using MJM.SPP.EntidadesNegocio;

namespace MJM.SPP.ComponentesNegocio
{
    public class AsignacionTarCN
    {
        protected static AsignacionTarAD objAsignacionTarAD = new AsignacionTarAD();

        public int Insertar(AsignacionTarEN objAsignacionTarEN)
        {
            return objAsignacionTarAD.Insertar(objAsignacionTarEN);
        }

        public bool EncuentraUsuario(String Usuario)
        {
            List<AsignacionTarEN> lst = objAsignacionTarAD.Listar(Usuario);
            if (lst.Count > 0)
                return true;
            return false;
        }

        public AsignacionTarEN Obtener(String Usuario)
        {
            List<AsignacionTarEN> lst = objAsignacionTarAD.Listar(Usuario);
            if(lst.Count>0)
                return lst[0];
            return null;
        }

        public int Eliminar(int Id)
        {
            return objAsignacionTarAD.Eliminar(Id);
        }

        public List<AsignacionTarEN> ListarTodos()
        {
            return objAsignacionTarAD.Listar("");
        }

        public int CantidadTarjetas()
        {
            return ListarTodos().Count;
        }

        public int AsignarTarjeta(String Usuario, String Tarjeta,string fecvencimiento, string usumod,string fecasignacion)
        {
            return objAsignacionTarAD.AsignarTarjeta(Usuario, Tarjeta, usumod, fecvencimiento, fecasignacion);
        }

        public bool ValidarNroTarjeta(String NroTarjeta)
        {
            List<AsignacionTarEN> lst = ListarTodos();
            for (int i = 0; i < lst.Count; i++)
            {
                if (lst[i].ASITAR_chCODTAR == NroTarjeta && lst[i].USUPAD_P_chUSU == "")
                    return true;
            }

            return false;
        }
    }
}
